home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C++ für Kids
/
C++ for kids.iso
/
Buch
/
Ding1.cpp
< prev
next >
Wrap
C/C++ Source or Header
|
1999-01-26
|
2KB
|
64 lines
//---------------------------------------------------------------------------
#include <vcl\vcl.h>
#pragma hdrstop
#include "Ding1.h"
//---------------------------------------------------------------------------
#pragma resource "*.dfm"
template <class AllThing> class TThing
{
private:
AllThing Daten;
public:
virtual void Change (AllThing D);
virtual AllThing Typ (void) {return Daten;};
TThing (AllThing D);
virtual ~TThing (void) {};
};
const int Max = 10;
String Namen[Max] = {"Frank", "Julia", "Berti", "Lara", "Sigi",
"Anna", "Otto", "Rita", "Rudi", "Inge"};
// Objekte auch mal ohne Zeiger
TThing <String> Ding1 ("???");
TThing <double> Ding2 (0);
TForm1 *Form1;
//---------------------------------------------------------------------------
template <class AllThing> TThing<AllThing>::TThing(AllThing D)
{
Daten = D;
};
//---------------------------------------------------------------------------
template <class AllThing>
void TThing<AllThing>::Change (AllThing D)
{
Daten = D;
}
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Button1->Caption = Ding1.Typ ();
Ding1.Change (Namen[random(Max)]);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Button2->Caption =
FloatToStrF (Ding2.Typ()/100, ffNumber, 8, 2);
Ding2.Change (random(1000000));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
randomize ();
}
//---------------------------------------------------------------------------